Systems and methods for updating sequence of services

ABSTRACT

The present disclosure relates to systems and methods for updating a sequence of services. The systems may perform the methods to establish a network communication with the user terminal; obtain, from the user terminal, an identification associated with a user account registered with the system; obtain a current sequence of the plurality of services associated with the identification; determine whether a condition for updating the current sequence is satisfied, when the condition for updating the current sequence is not satisfied, send the current sequence of the plurality of services to the user terminal; and when the condition for updating the current sequence is satisfied, determine an updated sequence of the plurality of services displayed on the display of the user terminal.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/384,896, filed on Apr. 15, 2019, which is a continuation of U.S.patent application Ser. No. 15/985,662, now U.S. Pat. No. 10,306,404,filed on May 21, 2018, which is a continuation of InternationalApplication No. PCT/CN2016/111374, filed on Dec. 21, 2016, whichdesignates the United States of America and claims priority of ChineseApplication No. CN 201510973197.1, filed on Dec. 22, 2015 and ChineseApplication No. CN 201610040465.9, filed on Jan. 21, 2016, contents ofwhich are hereby incorporated by reference in their entirety.

TECHNICAL FIELD

This application relates generally to a system and method for operatingan on-demand service, and in particular, a system and method forupdating a sequence of services.

BACKGROUND

On-demand services become more and more popular. A mobile transportationservice application may include multiple services that a user maychoose. The application may display the multiple services in a sequence.It is desirable to have customized sequence of services for a certainuser without updating too often.

SUMMARY

According to an aspect of the present disclosure, a system may includeat least one computer-readable storage medium and at least one processorconfigured to communicate with the at least one computer-readablestorage medium. The at least one computer-readable storage medium mayinclude a set of instructions for updating a sequence of services. Whenthe at least one processor executing the set of instructions, the atleast one processor may be directed to perform one or more of thefollowing operations. The at least one processor may establish a networkcommunication with the user terminal. The at least one processor mayobtain, from the user terminal, an identification associated with a useraccount registered with the system. The at least one processor mayobtain a current sequence of the plurality of services associated withthe identification. The at least one processor may determine whether acondition for updating the current sequence is satisfied. The at leastone processor may send the current sequence of the plurality of servicesto the user terminal when the condition for updating the currentsequence is not satisfied. The at least one processor may determine thatan updated sequence of the plurality of services may be displayed on thedisplay of the user terminal when the condition for updating the currentsequence is satisfied.

In some embodiments, the at least one processor may obtain, from theuser terminal, a current location of the user terminal. The conditionmay include at least one of a number of days in which the user initiatesservice requests within a first geographical area encompassing thecurrent location of the user terminal being more than a first threshold,an interval between a previous updating time of the sequence of theplurality of services and a current instance being longer than a secondthreshold or a ratio between a characteristic value for the currentsequence of the plurality of services and a characteristic value for anoptimized sequence of the plurality of services being less than a thirdthreshold.

In some embodiments, the characteristic value for the current sequenceof the plurality of services may be a sum of a plurality of fractions.Each fraction of the plurality of fractions may be associated with aservice of the plurality of services. For each service, the fraction forthe service may be associated with an order of the service in thecurrent sequence of the plurality of services and a travel value of theservice indicating a trend of the user to request for the service.

In some embodiments, the travel value may be determined based on atleast one of a number of historical service requests for the servicewithin a first time period, a number of completed historical servicerequests for the service within the first time period, currentavailability information indicating a supply level of the service; anumber of page views for a page displaying the service, or a number ofunique visitors visiting the page displaying the service.

In some embodiments, for each service of the plurality of services, theat least one processor may obtain records of historical requests toservice conducted through the user terminal. The at least one processormay determine, based on the records of the historical requests, a travelvalue indicating a trend of the user to request for the service. The atleast one processor may determine the updated sequence based on thetravel value of the service.

In some embodiments, the at least one processor may obtain, from theuser terminal, a current instance and a current location of the userterminal. For each service of the plurality of services, the at leastone processor may obtain records of historical requests to service priorto the current instance. The at least one processor may obtain currentavailability information indicating a supply level of the service withina vicinity of the current location of the user terminal. The at leastone processor may determine, based on the records of the historicalrequests and the current availability information, a probability thatthe service will be selected by the user. The at least one processor maydetermine an updated order of the service in the updated sequence basedon the probability.

In some embodiments, the current availability information of the servicemay include a number of available service providers associated with theservice within the vicinity of the user terminal and a number of currentservice requests associated with the service within a second time periodfrom the current instance within a vicinity of the user terminal.

In some embodiments, the records of historical requests may include afirst type of records associated with one or more other user terminalswithin a second geographical area encompassing the current location ofthe user terminal. For each service, the first type of records mayinclude a number of a plurality of first historical requests within athird time period from the current instance.

In some embodiments, the records of historical requests may furtherinclude a second type of records associated with the user terminal. Foreach service, the second type of records may include at least one of anumber of a plurality of second historical requests, a plurality ofsecond historical requesting time wherein each second historicalrequesting time of the plurality of second historical requesting timemay be associated with a second historical request of the plurality ofsecond historical requests, a probability of using coupons for the user,or information relating to the user's visit to a page displaying theservice.

In some embodiments, for each service, the information relating to theuser's visit to the page displaying the service may include at least oneof a number of visit to the page and a total duration on the page.

According to another aspect of the present disclosure, a method mayinclude one or more of the following operations. A computer server mayestablish a network communication with the user terminal. The computerserver may obtain, from the user terminal, an identification associatedwith a user account registered with the system. The computer server mayobtain a current sequence of the plurality of services associated withthe identification. The computer server may determine whether acondition for updating the current sequence is satisfied. The computerserver may send the current sequence of the plurality of services to theuser terminal when the condition for updating the current sequence isnot satisfied. The computer server may determine that an updatedsequence of the plurality of services may be displayed on the display ofthe user terminal when the condition for updating the current sequenceis satisfied.

In some embodiments, the computer server may obtain, from the userterminal, a current location of the user terminal. The condition mayinclude at least one of a number of days in which the user initiatesservice requests within a first geographical area encompassing thecurrent location of the user terminal being more than a first threshold,an interval between a previous updating time of the sequence of theplurality of services and a current instance being longer than a secondthreshold or a ratio between a characteristic value for the currentsequence of the plurality of services and a characteristic value for anoptimized sequence of the plurality of services being less than a thirdthreshold.

In some embodiments, the characteristic value for the current sequenceof the plurality of services may be a sum of a plurality of fractions.Each fraction of the plurality of fractions may be associated with aservice of the plurality of services. For each service, the fraction forthe service may be associated with an order of the service in thecurrent sequence of the plurality of services and a travel value of theservice indicating a trend of the user to request for the service.

In some embodiments, the travel value may be determined based on atleast one of a number of historical service requests for the servicewithin a first time period, a number of completed historical servicerequests for the service within the first time period, currentavailability information indicating a supply level of the service, anumber of page views for a page displaying the service, or a number ofunique visitors visiting the page displaying the service.

In some embodiments, for each service of the plurality of services, thecomputer server may obtain records of historical requests to serviceconducted through the user terminal. The computer server may determine,based on the records of the historical requests, a travel valueindicating a trend of the user to request for the service. The computerserver may determine the updated sequence based on the travel value ofthe service.

In some embodiments, the computer server may obtain, from the userterminal, a current instance and a current location of the userterminal. For each service of the plurality of services, the computerserver may obtain records of historical requests to service prior to thecurrent instance. The computer server may obtain current availabilityinformation indicating a supply level of the service within a vicinityof the current location of the user terminal. The computer server maydetermine, based on the records of the historical requests and thecurrent availability information, a probability that the service will beselected by the user. The computer server may determine an updated orderof the service in the updated sequence based on the probability.

In some embodiments, the current availability information of the servicemay include a number of available service providers associated with theservice within the vicinity of the user terminal and a number of currentservice requests associated with the service within a second time periodfrom the current instance within a vicinity of the user terminal.

In some embodiments, the records of historical requests may include afirst type of records associated with one or more other user terminalswithin a second geographical area encompassing the current location ofthe user terminal. For each service, the first type of records mayinclude a number of a plurality of first historical requests within athird time period from the current instance.

In some embodiments, the records of historical requests may furtherinclude a second type of records associated with the user terminal. Foreach service, the second type of records may include at least one of anumber of a plurality of second historical requests, a plurality ofsecond historical requesting time wherein each second historicalrequesting time of the plurality of second historical requesting time isassociated with a second historical request of the plurality of secondhistorical requests, a probability of using coupons for the user, orinformation relating to the user's visit to a page displaying theservice.

In some embodiments, for each service, the information relating to theuser's visit to the page displaying the service may include at least oneof a number of visit to the page and a total duration on the page.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is further described in terms of exemplaryembodiments. These exemplary embodiments are described in detail withreference to the drawings. These embodiments are non-limiting exemplaryembodiments, in which like reference numerals represent similarstructures throughout the several views of the drawings, and wherein:

FIG. 1 is a block diagram of an exemplary on-demand service systemaccording to some embodiments;

FIG. 2 is a block diagram illustrating an exemplary computing device inthe on-demand service system according to some embodiments of thepresent disclosure;

FIG. 3 is a block diagram illustrating an exemplary processing engineaccording to some embodiments of the present disclosure;

FIG. 4 shows an exemplary process 400 for updating a sequence of aplurality of services displayed as a sequence of options on a display ofa user terminal of a user according to some embodiments of the presentdisclosure;

FIG. 5 shows an exemplary process 500 for determining a ratio betweenthe characteristic value for the current sequence of the plurality ofservices and the characteristic value for the optimized sequence of theplurality of services according to some embodiments of the presentdisclosure;

FIG. 6 shows an exemplary process 600 for determining an updated orderin the updated sequence of the plurality of services for one serviceaccording to some embodiments of the present disclosure;

FIG. 7 shows an exemplary process 700 for determining a travel value fora service according to some embodiments of the present disclosure;

FIG. 8 is a flowchart illustrating an exemplary process/method 800 fordetermining an updated order of the services in the updated sequenceaccording to some embodiments of the present disclosure;

FIG. 9 is a schematic diagram of an exemplary user interface showing asequence of a plurality of services according to some embodiments of thepresent disclosure.

DETAILED DESCRIPTION

The following description is presented to enable any person skilled inthe art to make and use the present disclosure, and is provided in thecontext of a particular application and its requirements. Variousmodifications to the disclosed embodiments will be readily apparent tothose skilled in the art, and the general principles defined herein maybe applied to other embodiments and applications without departing fromthe spirit and scope of the present disclosure. Thus, the presentdisclosure is not limited to the embodiments shown, but is to beaccorded the widest scope consistent with the claims.

The terminology used herein is for the purpose of describing particularexample embodiments only and is not intended to be limiting. As usedherein, the singular forms “a,” “an,” and “the” may be intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprise,”“comprises,” and/or “comprising,” “include,” “includes,” and/or“including,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof.

These and other features, and characteristics of the present disclosure,as well as the methods of operation and functions of the relatedelements of structure and the combination of parts and economies ofmanufacture, may become more apparent upon consideration of thefollowing description with reference to the accompanying drawings, allof which form a part of this disclosure. It is to be expresslyunderstood, however, that the drawings are for the purpose ofillustration and description only and are not intended to limit thescope of the present disclosure. It is understood that the drawings arenot to scale.

The flowcharts used in the present disclosure illustrate operations thatsystems implement according to some embodiments in the presentdisclosure. It is to be expressly understood, the operations of theflowchart may be implemented not in order. Conversely, the operationsmay be implemented in inverted order, or simultaneously. Moreover, oneor more other operations may be added to the flowcharts. One or moreoperations may be removed from the flowcharts.

Moreover, while the system and method in the present disclosure isdescribed primarily in regard to allocate a set of sharable orders, itshould also be understood that this is only one exemplary embodiment.The system or method of the present disclosure may be applied to anyother kind of on demand service. For example, the system or method ofthe present disclosure may be applied to transportation systems ofdifferent environments including land, ocean, aerospace, or the like, orany combination thereof. The vehicle of the transportation systems mayinclude a taxi, a private car, a hitch, a bus, a train, a bullet train,a high speed rail, a subway, a vessel, an aircraft, a spaceship, ahot-air balloon, a driverless vehicle, or the like, or any combinationthereof. The transportation system may also include any transportationsystem for management and/or distribution, for example, a system forsending and/or receiving an express. The application of the system ormethod of the present disclosure may include a webpage, a plug-in of abrowser, a client terminal, a custom system, an internal analysissystem, an artificial intelligence robot, or the like, or anycombination thereof.

The term “user”, “passenger,” “requestor,” “service requestor,” and“customer” in the present disclosure are used interchangeably to referto an individual, an entity or a tool that may request or order aservice. Also, the term “driver,” “provider,” “service provider,” and“supplier” in the present disclosure are used interchangeably to referto an individual, an entity or a tool that may provide a service orfacilitate the providing of the service. In the present disclosure,“user” and “user terminal 130” may be used interchangeably.

The term “service request”, “requests”, and “order” in the presentdisclosure are used interchangeably to refer to a request that may beinitiated by a user, a passenger, a service requestor, a customer, adriver, a provider, a service provider, a supplier, or the like, or anycombination thereof. The service request may be accepted by any one of apassenger, a user, a service requestor, a customer, a driver, aprovider, a service provider, or a supplier. The service request may bechargeable or free.

The positioning technology used in the present disclosure may be basedon a global positioning system (GPS), a global navigation satellitesystem (GLONASS), a compass navigation system (COMPASS), a Galileopositioning system, a quasi-zenith satellite system (QZSS), a wirelessfidelity (WiFi) positioning technology, or the like, or any combinationthereof. One or more of the above positioning systems may be usedinterchangeably in the present disclosure.

According to an aspect of the present disclosure, a service platformproviding multiple services may display the services on a user terminalin a sequence. In the sequence, a service preferred by the user or aservice with a highest likelihood to be requested may be displayed in aprominent position (e.g., the foreground or the top) to make it easierfor the user to choose. The sequence may be updated according to realsituations. An aspect of the present disclosure relates to onlinesystems and methods for updating a sequence of services to be displayedon a user terminal without disturbing the user. The systems and methodsmay do so by determining whether a condition for updating a currentsequence is satisfied. Only when the condition for updating a currentsequence is satisfied, may the systems and methods update the sequenceof services. Thus, the systems and methods may recommend to the user anaccurate sequence of services from which it is convenient to choosehis/her desired service without disturbing the user frequently.

It should be noted that online on-demand transportation service, such asonline taxi hailing, is a new form of service rooted only inpost-Internet era. It provides technical solutions to users and serviceproviders that could raise only in post-Internet era. In pre-Internetera, when a user hails a taxi on street, the user cannot select aservice in advance. If the passenger hails a taxi through telephonecall, the service provider (e.g., one taxi company or agent) may onlyrecommend a service to the user manually. Besides, the recommendationmay not be accustomed. The recommendation may be out of date and unableto reflect the current situation. Online taxi, however, allows a user ofthe service to real-time and automatic distribute a service request to avast number of individual service providers (e.g., taxi) distance awayfrom the user. The user may send a service request from a user terminalusing a service application. Before sending the service request, theapplication may recommend a service to the user automatically. Bydisplaying services in a sequence, the online on-demand transportationsystems reduces users' manual manipulations on the user interface andenhance user experience. It also allows a plurality of service providesto respond to the service request simultaneously and in real-time.Therefore, through Internet, the online on-demand transportation systemsmay provide a much more efficient transaction platform for the users andthe service providers that may never met in a traditional pre-Internettransportation service system.

FIG. 1 is a block diagram of an exemplary on-demand service system 100according to some embodiments. For example, the on-demand service system100 may be an online transportation service platform for transportationservices such as a taxi hailing service, a chauffeur service, an expresscar service, a carpool service, a bus service, a driver hire service,and a shuttle service. The on-demand service system 100 may be an onlineplatform including a server 110, a network 120, a user terminal 130, aprovider terminal 140, a vehicle 150, and a database 160. The server 110may include a processing engine 112.

The on-demand service system 100 may provide a plurality of services.Exemplary service may include a taxi hailing service, a chauffeurservice, an express car service, a carpool service, a bus service, adriver hire service, and a shuttle service. In some embodiments, theon-demand service may be any on-line service, such as booking a meal,shopping, or the like, or a combination thereof. In some embodiments,the plurality of services may be displayed in a sequence. Each servicemay have an order or a ranking in the sequence.

In some embodiments, the server 110 may be a single server, or a servergroup. The server group may be centralized, or distributed (e.g., server110 may be a distributed system). In some embodiments, the server 110may be local or remote. For example, the server 110 may accessinformation and/or data stored in the user terminal 130, the providerterminal 140, and/or the database 160 via the network 120. As anotherexample, the server 110 may be directly connected to the user terminal130, the provider terminal 140, and/or the database 160 to access storedinformation and/or data. In some embodiments, the server 110 may beimplemented on a cloud platform. Merely by way of example, the cloudplatform may include a private cloud, a public cloud, a hybrid cloud, acommunity cloud, a distributed cloud, an inter-cloud, a multi-cloud, orthe like, or any combination thereof. In some embodiments, the server110 may be implemented on a computing device 200 having one or morecomponents illustrated in FIG. 2 in the present disclosure.

In some embodiments, the server 110 may include a processing engine 112.The processing engine 112 may process information and/or data relatingto the service request to perform one or more functions described in thepresent disclosure. For example, the processing engine 112 may determinea target vehicle based on the service request obtained from the userterminal 130. In some embodiments, the processing engine 112 may includeone or more processing engines (e.g., single-core processing engine(s)or multi-core processor(s)). Merely by way of example, the processingengine 112 may include a central processing unit (CPU), anapplication-specific integrated circuit (ASIC), an application-specificinstruction-set processor (ASIP), a graphics processing unit (GPU), aphysics processing unit (PPU), a digital signal processor (DSP), a fieldprogrammable gate array (FPGA), a programmable logic device (PLD), acontroller, a microcontroller unit, a reduced instruction-set computer(RISC), a microprocessor, or the like, or any combination thereof.

The network 120 may facilitate exchange of information and/or data. Insome embodiments, one or more components in the on-demand service system100 (e.g., the server 110, the user terminal 130, the provider terminal140, the vehicle 150, and the database 160) may send information and/ordata to other component(s) in the on-demand service system 100 via thenetwork 120. For example, the server 110 may obtain/acquire servicerequest from the user terminal 130 via the network 120. In someembodiments, the network 120 may be any type of wired or wirelessnetwork, or combination thereof. Merely by way of example, the network130 may include a cable network, a wireline network, an optical fibernetwork, a tele communications network, an intranet, an Internet, alocal area network (LAN), a wide area network (WAN), a wireless localarea network (WLAN), a metropolitan area network (MAN), a wide areanetwork (WAN), a public telephone switched network (PSTN), a Bluetoothnetwork, a ZigBee network, a near field communication (NFC) network, orthe like, or any combination thereof. In some embodiments, the network120 may include one or more network access points. For example, thenetwork 120 may include wired or wireless network access points such asbase stations and/or internet exchange points 120-1, 120-2, . . . ,through which one or more components of the on-demand service system 100may be connected to the network 120 to exchange data and/or information.

In some embodiments, a user may be an owner of the user terminal 130. Insome embodiments, the owner of the user terminal 130 may be someoneother than the user. For example, an owner A of the user terminal 130may use the user terminal 130 to send a service request for a user B, orreceive service and/or information or instructions from the server 110.In some embodiments, a provider may be a user of the provider terminal140. In some embodiments, the user of the provider terminal 140 may besomeone other than the provider. For example, a user C of the providerterminal 140 may user the provider terminal 140 to receive a servicerequest for a user D, and/or information or instructions from the server110. In some embodiments, “user” and “user terminal 130” may be usedinterchangeably, and “provider” and “provider terminal” may be usedinterchangeably.

In some embodiments, the user terminal 130 may include a mobile device130-1, a tablet computer 130-2, a laptop computer 130-3, a built-indevice in a motor vehicle 130-4, or the like, or any combinationthereof. In some embodiments, the mobile device 130-1 may include asmart home device, a wearable device, a smart mobile device, a virtualreality device, an augmented reality device, or the like, or anycombination thereof. In some embodiments, the smart home device mayinclude a smart lighting device, a control device of an intelligentelectrical apparatus, a smart monitoring device, a smart television, asmart video camera, an interphone, or the like, or any combinationthereof. In some embodiments, the wearable device may include a smartbracelet, a smart footgear, a smart glass, a smart helmet, a smartwatch, a smart clothing, a smart backpack, a smart accessory, or thelike, or any combination thereof. In some embodiments, the smart mobiledevice may include a smartphone, a personal digital assistance (PDA), agaming device, a navigation device, a point of sale (POS) device, or thelike, or any combination thereof. In some embodiments, the virtualreality device and/or the augmented reality device may include a virtualreality helmet, a virtual reality glass, a virtual reality patch, anaugmented reality helmet, an augmented reality glass, an augmentedreality patch, or the like, or any combination thereof. For example, thevirtual reality device and/or the augmented reality device may include aGoogle Glass, an Oculus Rift, a Hololens, a Gear VR, etc. In someembodiments, built-in device in the motor vehicle 130-4 may include anonboard computer, an onboard television, etc. In some embodiments, theuser terminal 130 may be a device with positioning technology forlocating the position of the user and/or the user terminal 130.

The provider terminal 140 may include a plurality of provider terminals140-1, 140-2, . . . , 140-n. In some embodiments, the provider terminal140 may be similar to, or the same device as the user terminal 130. Insome embodiments, the provider terminal 140 may be a device withpositioning technology for locating the position of the provider, theprovider terminal 140, and/or a vehicle 150 associated with the providerterminal 140. In some embodiments, the user terminal 130 and/or theprovider terminal 140 may communicate with other positioning device todetermine the position of the user, the user terminal 130, the provider,and/or the provider terminal 140. In some embodiments, the user terminal130 and/or the provider terminal 140 may send positioning information tothe server 110. In some embodiments, the provider terminal 140 may havean availability status. The availability status may indicate whether avehicle 150 associated with the provider terminal 140 is available tocarry a user.

In some embodiments, the provider terminal 140 may correspond to one ormore vehicles 150. The vehicles 150 may carry the user and travel to thedestination. The vehicles 150 may include a plurality of vehicles 150-1,150-2, . . . , 150-n. One vehicle may correspond to one type of services(e.g., a taxi hailing service, a chauffeur service, an express carservice, a carpool service, a bus service, a driver hire service, and ashuttle service).

The database 160 may store data and/or instructions. In someembodiments, the database 160 may store data obtained from the userterminal 130 and/or the provider terminal 140. In some embodiments, thedatabase 160 may store data and/or instructions that the server 110 mayexecute or use to perform exemplary methods described in the presentdisclosure. In some embodiments, database 160 may include a massstorage, a removable storage, a volatile read-and-write memory, aread-only memory (ROM), or the like, or any combination thereof.Exemplary mass storage may include a magnetic disk, an optical disk, asolid-state drives, etc. Exemplary removable storage may include a flashdrive, a floppy disk, an optical disk, a memory card, a zip disk, amagnetic tape, etc. Exemplary volatile read-and-write memory may includea random access memory (RAM). Exemplary RAM may include a dynamic RAM(DRAM), a double date rate synchronous dynamic RAM (DDR SDRAM), a staticRAM (SRAM), a thyristor RAM (T-RAM), and a zero-capacitor RAM (Z-RAM),etc. Exemplary ROM may include a mask ROM (MROM), a programmable ROM(PROM), an erasable programmable ROM (PEROM), an electrically erasableprogrammable ROM (EEPROM), a compact disk ROM (CD-ROM), and a digitalversatile disk ROM, etc. In some embodiments, the database 160 may beimplemented on a cloud platform. Merely by way of example, the cloudplatform may include a private cloud, a public cloud, a hybrid cloud, acommunity cloud, a distributed cloud, an inter-cloud, a multi-cloud, orthe like, or any combination thereof.

In some embodiments, the database 160 may be connected to the network120 to communicate with one or more components in the on-demand servicesystem 100 (e.g., the server 110, the user terminal 130, the providerterminal 140, etc.). One or more components in the on-demand servicesystem 100 may access the data or instructions stored in the database160 via the network 120. In some embodiments, the database 160 may bedirectly connected to or communicate with one or more components in theon-demand service system 100 (e.g., the server 110, the user terminal130, the provider terminal 140, etc.). In some embodiments, the database160 may be part of the server 110.

In some embodiments, one or more components in the on-demand servicesystem 100 (e.g., the server 110, the user terminal 130, the providerterminal 140, etc.) may have a permission to access the database 160. Insome embodiments, one or more components in the on-demand service system100 may read and/or modify information relating to the user, provider,and/or the public when one or more conditions are met. For example, theserver 110 may read and/or modify one or more users' information after aservice.

In some embodiments, information exchanging of one or more components inthe on-demand service system 100 may be achieved by way of requesting aservice. The object of the service request may be any product. In someembodiments, the product may be a tangible product, or an immaterialproduct. The tangible product may include food, medicine, commodity,chemical product, electrical appliance, clothing, car, housing, luxury,or the like, or any combination thereof. The immaterial product mayinclude a servicing product, a financial product, a knowledge product,an internet product, or the like, or any combination thereof. Theinternet product may include an individual host product, a web product,a mobile internet product, a commercial host product, an embeddedproduct, or the like, or any combination thereof. The mobile internetproduct may be used in a software of a mobile terminal, a program, asystem, or the like, or any combination thereof. The mobile terminal mayinclude a tablet computer, a laptop computer, a mobile phone, a personaldigital assistance (PDA), a smart watch, a point of sale (POS) device,an onboard computer, an onboard television, a wearable device, or thelike, or any combination thereof. For example, the product may be anysoftware and/or application used in the computer or mobile phone. Thesoftware and/or application may relate to socializing, shopping,transporting, entertainment, learning, investment, or the like, or anycombination thereof. In some embodiments, the software and/orapplication relating to transporting may include a traveling softwareand/or application, a vehicle scheduling software and/or application, amapping software and/or application, etc. In the vehicle schedulingsoftware and/or application, the vehicle may include a horse, acarriage, a rickshaw (e.g., a wheelbarrow, a bike, a tricycle, etc.), acar (e.g., a taxi, a bus, a private car, etc.), a train, a subway, avessel, an aircraft (e.g., an airplane, a helicopter, a space shuttle, arocket, a hot-air balloon, etc.), or the like, or any combinationthereof.

FIG. 2 is a schematic diagram illustrating exemplary hardware andsoftware components of a computing device 200 on which the computerserver 110, the user terminal 130, and/or the provider terminal 140 maybe implemented according to some embodiments of the present disclosure.For example, the processing engine 112 may be implemented on thecomputing device 200 and configured to perform functions of theprocessing engine 112 disclosed in this disclosure.

The computing device 200 may be a general purpose computer or a specialpurpose computer, both may be used to implement an on-demand system forthe present disclosure. The computing device 200 may be used toimplement any component of the on-demand service as described herein.For example, the processing engine 112 may be implemented on thecomputing device 200, via its hardware, software program, firmware, or acombination thereof. Although only one such computer is shown, forconvenience, the computer functions relating to the on-demand service asdescribed herein may be implemented in a distributed fashion on a numberof similar platforms, to distribute the processing load.

The computing device 200, for example, may include COM ports 250connected to and from a network connected thereto to facilitate datacommunications. The computing device 200 may also include a centralprocessing unit (CPU) 220, in the form of one or more processors, forexecuting program instructions. The exemplary computer platform mayinclude an internal communication bus 210, program storage and datastorage of different forms, for example, a disk 270, and a read onlymemory (ROM) 230, or a random access memory (RAM) 240, for various datafiles to be processed and/or transmitted by the computer. The exemplarycomputer platform may also include program instructions stored in theROM 230, RAM 240, and/or other type of non-transitory storage medium tobe executed by the CPU 220. The methods and/or processes of the presentdisclosure may be implemented as the program instructions. The computingdevice 200 also includes an I/O component 260, supporting input/outputbetween the computer and other components therein such as user interfaceelements 280. The computing device 200 may also receive programming anddata via network communications.

Merely for illustration, only one CPU and/or processor is described inthe computing device 200. However, it should be note that the computingdevice 200 in the present disclosure may also include multiple CPUsand/or processors, thus operations and/or method steps that areperformed by one CPU and/or processor as described in the presentdisclosure may also be jointly or separately performed by the multipleCPUs and/or processors. For example, if in the present disclosure theCPU and/or processor of the computing device 200 executes both step Aand step B, it should be understood that step A and step B may also beperformed by two different CPUs and/or processors jointly or separatelyin the computing device 200 (e.g., the first processor executes step Aand the second processor executes step B, or the first and secondprocessors jointly execute steps A and B).

FIG. 3 is a block diagram illustrating an exemplary processing engine112 according to some embodiments of the present disclosure. Theprocessing engine 112 may include an acquisition module 310, adetermination module 320, an evaluation module 330, and a sorting module340.

The acquisition module 310 may be configured to obtain information froma plurality of users, a plurality of service providers, or other sources(public transportation source, metropolitan source, etc.).

The acquisition module 310 may obtain an identification from the userterminal 130 via the network 120. The acquisition module 310 may furtherobtain other information (e.g., a current location, a current instance,a current sequence of a plurality of services) of the user or the userterminal 130.

The determination module 320 may be configured to determine whether acondition for updating the current sequence of the plurality of services(e.g., a plurality of transportation services, such as taxi, carpool,test drive services.) is satisfied. In some embodiments, thedetermination module 320 may use information obtained by the acquisitionmodule 310 to conduct the determination.

When the determination module 320 determines that the condition forupdating the current sequence of the plurality of services is satisfied,the evaluation module 330 may be configured to determine a plurality oftravel values for the plurality of services. As used herein, a travelvalue for a service may be a value indicating a user's preference amonga plurality of services, frequency of usage of the plurality ofservices, probability of requesting for a service, and/or currentavailability of the service. The evaluation module 330 may determine atravel value for each service.

The evaluation module 330 may also determine a characteristic valueassociated with a sequence of the plurality of services. In someembodiments, the characteristic value may be determined as a sum of aplurality of fractions. Each fraction may correspond to one service. Theevaluation module 330 may determine the fraction for a service.

The sorting module 340 may determine an updated sequence of theplurality of services. In some embodiments, the sorting module 340 maydetermine the updated sequence based on travel values of the pluralityof services. The sorting module 340 may determine an order in theupdated sequence for each of the plurality of services. The order forthe service may indicate the preference of the user and/or theavailability of the service.

The modules in the processing engine 112 may be connected to orcommunicate with each other via a wired connection or a wirelessconnection. The wired connection may include a metal cable, an opticalcable, a hybrid cable, or the like, or any combination thereof. Thewireless connection may include a Local Area Network (LAN), a Wide AreaNetwork (WAN), a Bluetooth, a ZigBee, a Near Field Communication (NFC),or the like, or any combination thereof. Two or more of the modules maybe combined as a single module, and any one of the modules may bedivided into two or more units. For example, the acquisition module 310may be integrated in the determination module 320 as a single modulewhich may both obtain information from the user terminal 130 anddetermine whether the condition for updating the sequence is satisfiedbased on the obtained information.

FIG. 4 shows an exemplary process 400 for updating a sequence of aplurality of services displayed as a sequence of options on a display ofa user terminal 130 of a user. The process 400 may be implemented as aset of instructions in a non-transitory storage medium of the computerserver 110 of the system 100. The CPU 220 of the computer server 110 mayexecute the set of instructions and may accordingly perform the stops inthe process 400.

In step 410, COM ports 250 may establish network communications with auser terminal 130. The network communications may be a wiredcommunication or a wireless communication. Exemplary wirelesscommunication may include cellular communication, wireless local areanetwork (WLAN), WiMAX communication, Bluetooth communication, etc.

In some embodiments, COM ports 250 may establish the networkcommunications after a certain trigger event. The trigger event may be alaunching of a service application in the user terminal 130, a requestfor communication with the server 110, a receipt of location informationfrom the user terminal 130, a login of an account through the userterminal 130, a request for updating the sequence of services, etc.

In step 420, acquisition module 310 may obtain, from a user terminal130, an identification. The identification may be any identification toidentify the user. For example, the identification may be associatedwith the user, the user terminal 130, and/or an account that the userregistered with the online on-demand transportation service system 100,so that the acquisition module 310 may identify the user after thecommunications in step 410 are established. The identification may be inthe form of a phone number, a user account, or a unique identificationassociated with the user terminal 130 (media control access address,serial number, manufacture number, etc.). The user account may be anaccount registered at the transportation service platform.

In step 430, acquisition module 310 may obtain a current sequence of aplurality of services associated with the identification.

The system 100 may provide a plurality of transportation services to theuser. After the acquisition module 310 obtains the identification of theuser, user terminal and/or user account, the system 100 may retrieveand/or obtain the plurality of transportation services available to theuser as a list. Further, the plurality of transportation services in thelist may be ordered with a current sequence. The current sequence may begenerated prior to the current instance by CPU 220, or any otherprocessor of the computer server 110. Alternatively, the currentsequence may be set by the user according to his/her preference. Thecurrent sequence may be stored in the user terminal 130, the ROM 230, orthe database 160.

In step 440, determination module 320 may determine whether a conditionfor updating the current sequence is satisfied.

When the condition for updating the current sequence of the plurality ofservices is satisfied, in step 450, sorting module 340 may determine anupdated sequence of the plurality of services displayed on the displayof the user terminal 130. COM ports 250 may send the updated sequence tothe user terminal 130 through the network communications. A display ofthe user terminal 130 may display the updated sequence in the userinterface of the service application.

When the condition for updating the current sequence of the plurality ofservices is not satisfied, in step 460, COM ports 250 may send thecurrent sequence of the plurality of services to the user terminal 130.

In some embodiments, the condition may include the following conditions:

-   -   (I). When the last time that the user used one or more of the        plurality of transportation services in the same area of the        current location is long enough, i.e., when the number of days        in which the user initiated service requests within a first        geographical area encompassing the current location of the user        terminal 130 is more than a first threshold;    -   (II). When the sequence of the plurality of transportation        services has not been updated for a long time, i.e., when an        interval between a previous updating time of the sequence of the        plurality of services and a current instance is more than a        second threshold;    -   (III). When there are other reasons to update the sequence of        the plurality of transportation services. For example, when the        current sequence of the plurality of services are too far from        an optimized order, i.e., when a ratio between a characteristic        value for an optimized sequence of the plurality of services of        the plurality of services and a characteristic value for the        current sequence is less than a third threshold;        or any combination thereof.

The first threshold may be any suitable duration, for example, ten days,one month, one quarter, etc. When the number of days in which the userinitiates service requests within a first geographical area (forexample, a city) is larger than the first threshold, sorting module 340may determine an updated sequence. The first threshold may preventscenarios of overly frequently updating of the sequence. Sorting module340 may determine a time/deadline for updating the sequence according tohistorical locations of the user terminal 130.

The second threshold may be any suitable duration, for example, twentydays, one month, one quarter, etc. The second threshold may be the sameas or different to the first threshold. When the interval between aprevious updating time of the sequence of the plurality of services anda current instance is more than a second threshold, sorting module 340may determine an updated sequence and update the sequence. The secondthreshold may prevent the sequence of the plurality of transportationservices being overly out-of-dated. Accordingly, sorting module 340 maydetermine a time/deadline for updating the sequence according to historyof previous updates of the sequence.

The third threshold may be any ratio, for example, 0.5, 0.75, 0.8, 0.9,etc. The ratio between the characteristic value for the current sequenceof the plurality of services and the characteristic value for theoptimized sequence of the plurality of services may indicate the extentto which the current sequence deviates from the optimized sequence. Alarger ratio may indicate that the current sequence approximates theoptimized sequence. The optimized sequence may suggest the user's trendor preference to the plurality of services under the current conditionsaccurately. The third threshold may help the sequence of the pluralityof services be timely updated when something substantial to theplurality of services occurs (e.g., when there is a promotion and/or achange of term of the services, etc. that causes change of thesequence).

In some embodiments, the characteristic value for the current sequenceof the plurality of services may be determined as a sum of a pluralityof fractions. Each fraction of the plurality of fractions may beassociated with a service of the plurality of services. Evaluationmodule 330 may determine the fraction for the service based on an orderof the service in the current sequence and a travel value of theservice. The travel value may indicate a trend of the user to requestfor the service.

The characteristic value and/or the fractions may take various form ordefinitions.

Determination module 320 may determine whether one or more of the abovethree conditions are satisfied. If the one or more of the threeconditions are satisfied, determination module 320 may determine anupdated sequence of the plurality of services.

In some embodiments, the characteristic value may include a DCG(Discounted Cumulative Gain) value associated with a sequence of theplurality of services. The DCG value may indicate a quality of thesequence of the services. When sorting multiple elements, it may bedesired that the significant elements should have higher ranks orprominent positions while the insignificant elements should have lowerranks. A larger DCG value of a sequence may indicate that moresignificant elements have higher ranks in the sequence (e.g., at thetop). A smaller DCG value of a sequence may indicate that the one ormore significant elements are assigned lower ranks in the sequence(e.g., at the bottom). The ratio between a characteristic value for thecurrent sequence of the plurality of services and the characteristicvalue for the optimized sequence of the plurality of services mayinclude an NDCG (Normalized Discounted Cumulative Gain) value. Anoptimized sequence may assign a most significant element the highestposition (i.e., No. 1), then the second-most significant element thesecond-highest position (i.e., No. 2), etc. The NDCG value for thecurrent sequence may vary from 0.0 to 1.0, with 1.0 indicating that thecurrent sequence is exactly the optimized sequence.

In some embodiments, the user interface of the application may display apart of the plurality of services in an active window or interface. Theuser interface may display the other part of the plurality of servicesin a background window or interface.

For example, the total number of services provided by the system 100 maybe an integer n. The number of services displayed in an active window ona user's terminal may be another integer m. The integer m may be nolarger than the integer n. Thus the number of services displayed in abackground window may be an integer (n-m). Sorting module 340 maydetermine that a sequence of the (n-m) services in the background windowor interface may be updated. Additionally or alternatively, sortingmodule 340 may determine that a sequence of the m services in the activewindow may not be updated.

FIG. 5 shows an exemplary process 500 for determining a ratio betweenthe characteristic value for the current sequence of the plurality ofservices and the characteristic value for the optimized sequence of theplurality of services. The process and/or method 500 may be executed bythe on-demand service system 100. For example, the process and/or method500 may be implemented as a set of instructions (e.g., an application)stored in the ROM 230. The CPU 220 may execute the set of instructionsand may accordingly be directed to perform the process and/or method500.

In step 510, acquisition module 310 may obtain a DCG value of thecurrent sequence of the plurality of services.

The DCG value for a sequence of a plurality of services may be asequations (1) and (2) show:

$\begin{matrix}{{DCG} = {\sum_{n}f_{n}}} & (1) \\{f_{n} = \frac{R_{n}}{\log \left( {1 + {rank}_{n}} \right)}} & (2)\end{matrix}$

The DCG value for the current sequence of the plurality of services isdetermined as a sum of a plurality of fractions. Each fraction of theplurality of fractions may be associated with a service of the pluralityof services. For the nth service, the fraction f_(n) may be determinedbased on an order of the nth service rank_(n) in the current sequenceand a travel value R_(n) of the nth service. In some embodiments,rank_(n) may be any other value associated with the order of the nthservice, for example, the square of the nth service, the square root ofthe order of the nth service, etc.

Thus the DCG value may be as equation (3) shows:

$\begin{matrix}{{DCG} = {{\sum_{n}f_{n}} = {\sum_{n}\frac{R_{n}}{\log \left( {1 + {rank}_{n}} \right)}}}} & (3)\end{matrix}$

In step 520, acquisition module 310 may obtain a DCG value of theoptimized sequence of the plurality of services.

Sorting module 340 may determine an optimized sequence according to thetravel value. In some embodiments, sorting module 340 may sort theservices according to their travel values.

In step 530, evaluation module 330 may determine an NDCG value based onthe DCG values of the current sequence of the plurality of services andthe DCG values of the optimized sequence of the plurality of services.

Take the following as an example. If there are four services, namely,D1, D2, D3, and D4. The travel value for a service is equal to how manytimes a user initiates the service in a predetermined period of time(i.e., frequency of use). The frequencies of usage for the four servicesD1, D2, D3, and D4 are 3, 5, 0, and 3, respectively. If a currentsequence of the four services are (D1, D2, D4, D3). Service D1 is rankedat the top, while service D3 is ranked at the bottom. The DCG value forthe current sequence is as equation (4) shows:

$\begin{matrix}{{DCG}_{c} = {{\sum_{n}\frac{R_{n}}{\log \mspace{14mu} \left( {1 + {rank}_{n}} \right)}} = {{\frac{3}{\log \mspace{14mu} \left( {1 + 1} \right)} + \frac{5}{\log \mspace{14mu} \left( {1 + 2} \right)} + \frac{3}{\log \mspace{14mu} \left( {1 + 3} \right)} + \frac{0}{\log \mspace{14mu} \left( {1 + 4} \right)}} = 16.92}}} & (4)\end{matrix}$

The optimized sequence for the above example may be (D2, D1, D4, D3).The DCG value for the optimized sequence is as equation (5) shows:

$\begin{matrix}{{DCG}_{o} = {{\sum_{n}\frac{R_{n}}{\log \mspace{14mu} \left( {1 + {rank}_{n}} \right)}} = {{\frac{5}{\log \mspace{14mu} \left( {1 + 1} \right)} + \frac{3}{\log \mspace{14mu} \left( {1 + 2} \right)} + \frac{3}{\log \mspace{14mu} \left( {1 + 3} \right)} + \frac{0}{\log \mspace{14mu} \left( {1 + 4} \right)}} = 15.75}}} & (5)\end{matrix}$

Thus the NDCG value between the optimized sequence and the currentsequence is as equation (6) shows:

$\begin{matrix}{{NDCG} = {\frac{{DCG}_{o}}{{DCG}_{c}} = {\frac{15.75}{16.92} = 0.93}}} & (6)\end{matrix}$

If the third threshold is 0.8, the NDCG value is not less than the thirdthreshold. Thus the condition (III) is not satisfied. The deviation ofthe current sequence from the optimized sequence is quite little. Insome scenarios, replacing the current sequence with the optimizedsequence may cause inconvenience or confusion to the user. COM ports 250may send the current sequence to a user terminal 130 of the user.

In some embodiments, sorting module 340 may determine the updatedsequence of the plurality of services according to a process 600 shownin FIG. 6.

When condition for updating the current sequence is satisfied, sortingmodule 340 may determine an updated sequence. FIG. 6 shows an exemplaryprocess 600 for determining an updated order in the updated sequence ofthe plurality of services for one service. The process and/or method 600may be executed by the on-demand service system 100. For example, theprocess and/or method 600 may be implemented as a set of instructions(e.g., an application) stored in the ROM 230. The CPU 220 may executethe set of instructions and may accordingly be directed to perform theprocess and/or method 600.

In step 610, acquisition module 310 may obtain records of historicalrequests to service conducted through the user terminal 130. The recordsof historical requests may be stored in the user terminal 130, ROM 230,or database 160. The records of historical requests may be associatedwith one or more among the plurality of services. In some embodiments,the historical requests may be within a first time period prior to acurrent instance. The length of first time period may be an hour, a day,a week, a month, a quarter, or any other suitable duration.

In step 620, for each service of the plurality of services, evaluationmodule 330 may determine, based on the records of the historicalrequests, a travel value indicating a trend of the user to request forthe service.

In step 630, sorting module 340 may determine an updated order in theupdated sequence based on the travel value of the service. Further,sorting module 340 may determine the updated sequence according toupdated orders of the plurality of services. The plurality of servicesin the updated sequence may be in a descending order or in an ascendingorder.

In some embodiments, evaluation module 330 may determine the travelvalue for each service based on at least one of: a number of historicalrequests for the service within the first time period (as hereinbeforedescribed); a number of completed historical requests for the servicewithin the first time period; current availability informationindicating a supply level of the service; a number of page views for apage displaying the service; or a number of unique visitors visiting thepage displaying the service.

The number of historical requests and the number of completed historicalrequests for the service within the first time period may reflectfrequency of usage of the user for the service.

The current availability information of a service may include a numberof service providers associated with the service within a vicinity ofthe user terminal 130 and a number of current service requestsassociated with the service within a second time period from the currentinstance within the vicinity of the user terminal 130.

The service providers may have an availability status showing they areready to provide service. The second time period may be a relativelyshort time period. The duration of second time period may be 5 minutes,10 minutes, 15 minutes, etc. Service requests may be instantaneous orrandomly distributed with respect to time. Evaluation module 330 maydetermine demands from a plurality of users according to the number ofservice requests within the second time period.

The current availability information may be local. The vicinity of theuser terminal 130 may be a local area encompassing the current locationof the user terminal 130. The local area may be a circle surrounding thecurrent location of the user terminal 130. The circle may have a presetradium, say, 500 meters, 1 kilometer, 2 kilometers, etc. Alternatively,the local area may be in any other form or shape. The local area may beany area encompassing the current location of the user terminal 130. Forexample, the local area may be a business district, a residentialdistrict, a neighborhood, etc.

In some embodiments, the system 100 may direct a user terminal todisplay the plurality of services on a plurality of pages. Each page maydisplay one service. The application (mobile or desktop application) mayhave a user interface including the pages. The number of page views fora page displaying the service may reflect interest or attention of theuser. The number of page views for a page displaying the service mayinclude a number of page views by the user.

In some embodiments, evaluation module 330 may determine the travelvalue of a service according to a number of unique visitors visiting thepage displaying the service. The number of unique visitors visiting thepage displaying the service may reflect popularity of the service amonga group of users.

Evaluation module 330 may determine a travel value for a serviceaccording to a predetermined rule.

FIG. 7 shows an exemplary process 700 for determining a travel value fora service. Evaluation module 330 may determine travel values for theplurality of services to determine the updated sequence. The processand/or method 700 may be executed by the on-demand service system 100.For example, the process and/or method 700 may be implemented as a setof instructions (e.g., an application) stored in the ROM 230. The CPU220 may execute the set of instructions and may accordingly be directedto perform the process and/or method 700.

In step 710, evaluation module 330 may obtain at least two featuresassociated with one service of the plurality of services from historicalrequests. The at least two features may include a first feature and atleast one second feature. The at least two features may include a numberof historical requests for the service within the first time period, anumber of completed historical requests for the service within the firsttime period, current availability information indicating a supply levelof the service, a number of page views for a page displaying theservice, or a number of unique visitors visiting the page displaying theservice.

In step 720, evaluation module 330 may obtain a first value associatedwith the first feature and at least one second value associated with theat least one second feature.

In step 730, evaluation module 330 may determine at least onetransformative value based on the at least one second value and at leastone transformative rule. In some embodiments, evaluation module 330 mayobtain at least one transformative rule in advance. The transformativerule may be stored in ROM 230 or database 160. The transformative rulemay be a mapping rule from a second value associated with a secondfeature to a transformative value associated with the second feature.

In some embodiments, the transformative rule may specify that thetransformative value is one nth of the second value associated with thesecond feature. Here n may be a positive number.

For example, the service is a taxi service. The first feature is thenumber of historical requests for the taxi service within the first timeperiod. The only second feature is the number of page views for the pagedisplaying the taxi service. The transformative rule may specify thatevery ten times of page views may be equivalent to one historicalrequests. Supposing a user viewed the page 120 times during the lastmonth, the transformative value associated with the number of page viewsis thus 120× 1/10=12.

In step 740, evaluation module 330 may determine a travel value of theservice based on the first value and the at least one transformativevalue.

In some embodiments, evaluation module 330 may determine a sum of thefirst value and the at least one transformative value as the travelvalue. For example, if the user also conducted 10 historical requests.Evaluation module 330 may determine the travel value as 10+12=22.

Alternatively, evaluation module 330 may determine an average of thefirst value and the at least one transformative value as the travelvalue.

It should be noted that the description above is just for illustrativepurpose. Evaluation module 330 may determine the travel value accordingto any other rule. For example, processor may determine the travel valueas a geometric average of the first value and the at least onetransformative value.

FIG. 8 is a flowchart illustrating an exemplary process/method 800 fordetermining an updated order of the services in the updated sequenceaccording to some embodiments of the present disclosure. The processand/or method 800 may be executed by the on-demand service system 100.For example, the process and/or method 800 may be implemented as a setof instructions (e.g., an application) stored in the ROM 230. The CPU220 may execute the set of instructions and may accordingly be directedto perform the process and/or method 800.

In step 810, the acquisition module 310 may obtain or determine acurrent instance and a current location of the user terminal 130. Insome embodiments, the user terminal 130 may send a terminal ID to theCOM ports 250. The current time may be a time when the user terminal 130sends the terminal ID, or a time when the COM ports 250 receives theterminal ID. The current location may be a geographical location wherethe user terminal 130 sends the terminal ID.

In step 820, the acquisition module 310 may obtain records of historicalrequests to the services within a predetermined time period prior to thecurrent instance. For example, the predetermined time period may be aweek five days, one day, etc. In some embodiments, the records ofhistorical requests may include a first type of records. The first typeof records may be associated with one or more similar user terminals 130s within a second geographical area. The similar user terminals 130 smay share some characteristics with the user terminal to be assigned asequence. The second geographical area may encompass the currentlocation. For example, the second geographical area may be anadministrative district. The first type of records may include a numberof a plurality of first historical requests and the service selected foreach of the plurality of first historical requests. As used herein, thefirst historical requests are generated by the one or more userterminals 130 s. The first historical requests may be generated within athird time period prior to the current instance. The third time periodmay be fixed or adjustable.

In some embodiments, the records of historical requests may include asecond type of records associated with the user terminal 130. Theacquisition module 310 may obtain the second type of records relating tothe terminal ID. The second type of records may include a number of aplurality of second historical requests, a plurality of secondhistorical requesting time, a probability of using coupons for the user,information relating to the user's visit to a page displaying theservice (e.g., a number of visit to the page, a total duration on thepage, etc.), etc. Each of the plurality of second historical requestingtime may be associated with a second historical request. The evaluationmodule 330 may determine the probability of using coupons for the userbased on a total number of used coupons and a number of used coupons foreach service of the user.

In step 830, the acquisition module 310 may obtain current availabilityinformation of each service within a vicinity of the current location ofthe user terminal 130. The current availability information may indicatea supply level of the service. The current availability information mayinclude a number of available service providers associated with theservice within the vicinity of the user terminal 130 (e.g., theavailable service provider number within 100m around the user terminal130). The current availability information may further include a numberof current service requests associated with the service within a secondtime period (e.g., 5 minutes) from the current instance within thevicinity of the user terminal 130.

In step 840, the evaluation module 330 may determine a probability thatthe service will be selected by the user based on the records ofhistorical requests and the current availability information.

In some embodiments, the evaluation module 330 may determine theprobability that the service will be selected by the user based on amachine learning method. The machine learning method may include BayesModel (e.g., Naive Bayes Classifier), neural network model, or the like,or a combination thereof.

Taking Naive Bayes Classifier as an example, the evaluation module 330may determine the probability based on a plurality of features of theservice. The plurality of features may be determined based on therecords of historical requests. The processor may determine theprobability for a service by determining a conditional probability basedon the plurality of features. Vector X={a₁, a₂, . . . , a_(m),} maydenote the plurality of features. Vector Y={y₁, y₂, . . . , y_(m),} maydenote the plurality of services. The probability for the services maybe represented as P(y_(i)|X). As used herein, P(y_(i)|X) may denote theprobability that the service y_(i) will be selected by the user based onthe probability of occurrence of feature X. The probability ofoccurrence of feature X may be determined based on a probability ofoccurrence of feature a₁, a₂, . . . , and a_(m). The probability ofoccurrence of feature X may be trained by the records of historicalrequests.

In some embodiments, the evaluation module 330 may determine theplurality of features based on the first type of records. For example,the evaluation module 330 may determine a popularity of the servicesbased on the first type of records. The popularity of service y_(i) maybe determined by equation (7) below:

$\begin{matrix}{r_{i} = {\frac{n_{i}}{\sum n_{i}}*100\%}} & (7)\end{matrix}$

where i denotes an index of the service, r_(i) denotes the popularity ofservice y_(i), n_(i) denotes a number that service y_(i) was selected byusers of the first type of records, Σn_(i) denotes a total number thatservices Y={y₁, y₂, . . . , y_(m),} were selected by users of the firsttype of records. The sorting module 340 may multiply r_(i) by 100 anddetermine the integer part of the result as a feature representing thepopularity of service y_(i). For example, if the popularity for servicey_(i) is 90.6%, the evaluation module 330 may determine the popularityfor service y_(i) as 90.

In some embodiments, the evaluation module 330 may determine theplurality features based on the second type of records. Based on theterminal ID, the evaluation module 330 may determine that the servicesselected through the terminal for the latest three requests are {y₂, y₁,y₁}. A user-preference for the services may be determined by equation(8) below:

$\begin{matrix}{{DCG}_{i} = {\sum_{k \in i}\frac{1}{\sqrt{k}}}} & (8)\end{matrix}$

where i denotes an index of the service, k is an index of the rank ofservice y_(i), DCG_(i) denotes the user-preference for the servicey_(i). For example, the index of the rank of service y₂ is 1,

${DCG}_{2} = {\frac{1}{\sqrt{1}} = 1.}$

The index of the rank of service y₁ is 2 and 3,

${DCG}_{1} = {{\frac{1}{\sqrt{2}} + \frac{1}{\sqrt{3}}} = {1.28.}}$

In some scenarios, a recent historical service request may reflect auser's preference more accurately. As used herein, the

$\frac{1}{\sqrt{k}}$

may render a recent historical request more influential than an earlierhistorical request.

In some embodiments, the evaluation module 330 may determine a pluralityof features based on the order of DCG_(i). For example, for DCG₁=1.28,DCG₂=1, the evaluation module 330 may determine the rank of service y₁and y₂ as features representing the user-preference of the services.

As another example, the evaluation module 330 may determine a featurebased on the ratio of DCG₁ to DCG₂. As a way of discretization, theevaluation module 330 may multiply the ratio of DCG₁ to DCG₂ by 10 anddetermine the integer part of the result as a feature representing theuser-preference of the services. For example,

$\frac{10*{DCG}_{1}}{{DCG}_{2}} = {\frac{10*1.28}{1} = {12.8.}}$

The multiplying by a number greater than 1 cause the two values (DCG₁and DCG₂) much more distinguishable.

In some embodiments, the evaluation module 330 may determine theplurality of features based on the current availability information. Forexample, the evaluation module 330 may determine the number of availableservice providers associated with the service within the vicinity of theuser terminal 130 as a feature. As another example, the evaluationmodule 330 may determine the number of current service requestsassociated with the service within a second time period from the currentinstance within the vicinity of the user terminal 130.

In step 850, the sorting module 340 may determine an updated order ofthe services in the updated sequence based on the probability. Thesorting module 340 may rank the probabilities of the services indescending order. For example, if the probability for the user to selectservice y₁ is 20%, the probability to select service y₂ is 30%, theprobability to select service y₃ is 50%, thus the updated order of theupdated sequence may be y₃, y₂, and

For a certain service, the evaluation module 330 may determine thenumber of available service providers associated with the service withinthe vicinity of the user terminal 130 according to equation (9).

$\begin{matrix}{{value} = \left\{ \begin{matrix}{10,{otherwise}} \\{n_{i},{n_{i} < 10}}\end{matrix} \right.} & (9)\end{matrix}$

Table (1) shows numbers of service providers for a kth service within aplurality of vicinities of a user initiating a service request.

TABLE 1 Range of No. of available Range of No. of available request (m)service providers request service providers  0-99 n₀ 1000-1199 n₁₀₀₀100-199 n₁₀₀ 1200-1399 n₁₂₀₀ 200-299 n₂₀₀ 1400-1599 n₁₄₀₀ 300-399 n₃₀₀1600-1799 n₁₆₀₀ 400-499 n₄₀₀ 1800-1999 n₁₈₀₀ 500-599 n₅₀₀ 2000-2499n₂₀₀₀ 600-699 n₆₀₀ 2500-2999 n₂₅₀₀ 700-799 n₇₀₀ 3000-3999 n₃₀₀₀ 800-899n₈₀₀ 4000~ n₄₀₀₀ 900-999 n₉₀₀

For a certain service, the evaluation module 330 may determine thenumber of service requests associated with the service according toequation (10). The service requests may be initiated within a timeperiod of 5 minutes before the user's request.

$\begin{matrix}{{value} = \left\{ \begin{matrix}{10,{otherwise}} \\{n_{i},{n_{i} < 10}}\end{matrix} \right.} & (10)\end{matrix}$

Table (2) shows numbers of service providers for a kth service within aplurality of vicinities of a user initiating a service request.

TABLE 2 Range of No. of service Range of No. of service request (m)requests request requests  0-99 n₀ 1000-1199 n₁₀₀₀ 100-199 n₁₀₀1200-1399 n₁₂₀₀ 200-299 n₂₀₀ 1400-1599 n₁₄₀₀ 300-399 n₃₀₀ 1600-1799n₁₆₀₀ 400-499 n₄₀₀ 1800-1999 n₁₈₀₀ 500-599 n₅₀₀ 2000-2499 n₂₀₀₀ 600-699n₆₀₀ 2500-2999 n₂₅₀₀ 700-799 n₇₀₀ 3000-3999 n₃₀₀₀ 800-899 n₈₀₀ 4000~n₄₀₀₀ 900-999 n₉₀₀

FIG. 9 shows an exemplary user interface showing a sequence of aplurality of services. 900 shows the sequence of the plurality ofservices. The services may include a bus service 902, a lift service904, an express service 906, a taxi service 908, a luxury service 910,and one or more services 912 displayed in a background window. In someembodiments, the user interface may display the services 912 when userclicks at the ellipsis mark (three spaced dots).

Having thus described the basic concepts, it may be rather apparent tothose skilled in the art after reading this detailed disclosure that theforegoing detailed disclosure is intended to be presented by way ofexample only and is not limiting. Various alterations, improvements, andmodifications may occur and are intended to those skilled in the art,though not expressly stated herein. These alterations, improvements, andmodifications are intended to be suggested by this disclosure, and arewithin the spirit and scope of the exemplary embodiments of thisdisclosure.

Moreover, certain terminology has been used to describe embodiments ofthe present disclosure. For example, the terms “one embodiment,” “anembodiment,” and/or “some embodiments” mean that a particular feature,structure or characteristic described in connection with the embodimentis included in at least one embodiment of the present disclosure.Therefore, it is emphasized and should be appreciated that two or morereferences to “an embodiment” or “one embodiment” or “an alternativeembodiment” in various portions of this specification are notnecessarily all referring to the same embodiment. Furthermore, theparticular features, structures or characteristics may be combined assuitable in one or more embodiments of the present disclosure.

Further, it will be appreciated by one skilled in the art, aspects ofthe present disclosure may be illustrated and described herein in any ofa number of patentable classes or context including any new and usefulprocess, machine, manufacture, or composition of matter, or any new anduseful improvement thereof. Accordingly, aspects of the presentdisclosure may be implemented entirely hardware, entirely software(including firmware, resident software, micro-code, etc.) or combiningsoftware and hardware implementation that may all generally be referredto herein as a “module,” “unit,” “component,” “device” or “system.”Furthermore, aspects of the present disclosure may take the form of acomputer program product embodied in one or more computer readable mediahaving computer readable program code embodied thereon.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including electro-magnetic, optical, or thelike, or any suitable combination thereof. A computer readable signalmedium may be any computer readable medium that is not a computerreadable storage medium and that may communicate, propagate, ortransport a program for use by or in connection with an instructionexecution system, apparatus, or device. Program code embodied on acomputer readable signal medium may be transmitted using any appropriatemedium, including wireless, wireline, optical fiber cable, RF, or thelike, or any suitable combination of the foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB. NET,Python or the like, conventional procedural programming languages, suchas the “C” programming language, Visual Basic, Fortran 2003, Perl, COBOL2002, PHP, ABAP, dynamic programming languages such as Python, Ruby andGroovy, or other programming languages. The program code may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer or entirely on the remote computer or server. Inthe latter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider) or in a cloud computing environment or offered as aservice such as a Software as a Service (SaaS).

Furthermore, the recited order of processing elements or sequences, orthe use of numbers, letters, or other designations therefore, is notintended to limit the claimed processes and methods to any order exceptas may be specified in the claims. Although the above disclosurediscusses through various examples what is currently considered to be avariety of useful embodiments of the disclosure, it is to be understoodthat such detail is solely for that purpose, and that the appendedclaims are not limited to the disclosed embodiments, but, on thecontrary, are intended to cover modifications and equivalentarrangements that are within the spirit and scope of the disclosedembodiments. For example, although the implementation of variouscomponents described above may be embodied in a hardware device, it mayalso be implemented as a software only solution, e.g., an installationon an existing server or mobile device.

Similarly, it should be appreciated that in the foregoing description ofembodiments of the present disclosure, various features are sometimesgrouped together in a single embodiment, figure, or description thereoffor the purpose of streamlining the disclosure aiding in theunderstanding of one or more of the various embodiments. This method ofdisclosure, however, is not to be interpreted as reflecting an intentionthat the claimed subject matter requires more features than areexpressly recited in each claim. Rather, claim subject matter lie inless than all features of a single foregoing disclosed embodiment.

We claim:
 1. A system configured to display a plurality of services onan interface of a user terminal, comprising: processors electronicallyconnected to at least one storage medium via a bus, wherein duringoperation, the processors read the at least one storage medium and loada set of instructions from the at least one storage medium, and:establish a network communication with the user terminal; obtainelectronic signals from the bus from the user terminal, the electronicsignals including an identification associated with a user accountregistered with the system; obtain electronic signals from the bus, theelectronic signals including a current sequence of the plurality ofservices associated with the identification, wherein the currentsequence of the plurality of services includes a plurality of currentorders corresponding to the plurality of services respectively; andoperate logical circuits in the processors to determine whether acondition for updating the current sequence of the plurality of servicesis satisfied, when the condition for updating the current sequence ofthe plurality of services is not satisfied, operate logical circuits inthe processors to send the current sequence of the plurality of servicesto the user terminal; and when the condition for updating the currentsequence of the plurality of services is satisfied, operate logicalcircuits in the processors to determine an updated sequence of theplurality of services displayed on the interface of the user terminal,wherein the updated sequence of the plurality of services includes aplurality of updated orders corresponding to the plurality of servicesrespectively; wherein the condition for updating the current sequence ofthe plurality of services is associated with a characteristic value forthe current sequence of the plurality of services and a characteristicvalue for an optimized sequence of the plurality of services.
 2. Thesystem of claim 1, wherein the condition for updating the currentsequence of the plurality of services comprises: a number count of daysin which the user terminal initiates service requests within a firstgeographical area encompassing a current location of the user terminalbeing more than a first threshold; or an interval between a previousupdating time of the sequence of the plurality of services and a currentinstant being longer than a second threshold.
 3. The system of claim 1,wherein the condition for updating the current sequence of the pluralityof services comprises a ratio between the characteristic value for thecurrent sequence of the plurality of services and the characteristicvalue for the optimized sequence of the plurality of services being lessthan a third threshold.
 4. The system of claim 1, wherein: thecharacteristic value for the current sequence of the plurality ofservices is associated with a plurality of travel values and theplurality of current orders corresponding to the plurality of services;and the characteristic value for the optimized sequence of the pluralityof services is associated with the plurality of travel values and aplurality of optimized orders corresponding to the plurality ofservices.
 5. The system of claim 1, wherein the characteristic valueincludes a Discounted Cumulative Gain (DCG) value.
 6. The system ofclaim 1, wherein to determine the optimized sequence of the plurality ofservices, the processors further operate the logical circuits in theprocessors to: determine a plurality of travel values corresponding tothe plurality of services respectively; and determine the optimizedsequence of the plurality of services by ranking the plurality ofservices according to the plurality of travel values.
 7. The system ofclaim 6, wherein to determine the plurality of travel valuescorresponding to the plurality of services respectively, the processorsfurther operate logical circuits in the processors to: for each of theplurality of services, obtain a plurality of travel features including areference feature and at least one transformative feature; determine areference value corresponding to the reference feature and at least onetransformative value corresponding to the at least one transformativefeature; and determine the travel value corresponding to the servicebased on the reference value and the at least one transformative value.8. The system of claim 7, wherein the plurality of travel featuresinclude at least one of: a number count of historical service requestsfor the service within a predetermined time period; a number count ofcompleted historical service requests for the service within thepredetermined time period; current availability information indicating asupply level of the service; a number count of page views for a pagedisplaying the service; or a number count of unique visitors visitingthe page displaying the service.
 9. The system of claim 1, wherein todetermine the updated sequence of the plurality of services displayed onthe interface of the user terminal, the processors further operatelogical circuits in the processors to: determine the optimized sequenceof the plurality of services as the updated sequence of the plurality ofservices.
 10. The system of claim 1, wherein to determine the updatedsequence of the plurality of services displayed on the interface of theuser terminal, the processors further operate logical circuits in theprocessors to: for each of the plurality of services, obtain electronicsignals from the bus, the electronic signals including records ofhistorical service requests prior to a current instant; obtainelectronic signals from the bus, the electronic signals includingcurrent availability information indicating a supply level of theservice within a vicinity of a current location of the user terminal;determine, based on the records of the historical service requests andthe current availability information, a probability that the servicewill be selected by the user; and determine an updated ordercorresponding to the service based on the probability.
 11. The system ofclaim 10, wherein the records of historical service requests include afirst type of records or a second type of records, the first type ofrecords being associated with one or more other user terminals within asecond geographical area encompassing the current location of the userterminal and the second type of records being associated with the userterminal.
 12. The system of claim 11, wherein the records of historicalservice requests include the first type of records and the second typeof records associated with the user terminal, and wherein: for each ofthe plurality of services, the first type of records includes a numbercount of a plurality of first historical service requests within a firstpredetermined time period from the current instant; for each of theplurality of services, the second type of records includes at least oneof: a number count of a plurality of second historical service requestswithin a second predetermined time period; a plurality of secondhistorical requesting times corresponding to the plurality of secondhistorical service requests respectively; a probability of using couponsfor the user; or information relating to the user's visit to a pagedisplaying the service.
 13. The system of claim 10, wherein todetermine, based on the records of the historical service requests andthe current availability information, the probability that the servicewill be selected by the user, the processors further operate logicalcircuits in the processors to: determine, based on the records of thehistorical service requests and the current availability information,the probability that the service will be selected by the user accordingto a Naïve Bayes Classifier model.
 14. A method for displaying aplurality of services on an interface of a user terminal and operatingan online on-demand transportation service on at least one electronicdevice having processors, at least one storage medium, and acommunication platform connected to a network, comprising: establishinga network communication with the user terminal; obtaining electronicsignals from the bus from the user terminal, the electronic signalsincluding an identification associated with a user account registeredwith the system; obtaining electronic signals from the bus, theelectronic signals including a current sequence of the plurality ofservices associated with the identification, wherein the currentsequence of the plurality of services includes a plurality of currentorders corresponding to the plurality of services respectively; andoperating logical circuits in the processors to determine whether acondition for updating the current sequence of the plurality of servicesis satisfied, when the condition for updating the current sequence ofthe plurality of services is not satisfied, sending the current sequenceof the plurality of services to the user terminal; and when thecondition for updating the current sequence of the plurality of servicesis satisfied, determining an updated sequence of the plurality ofservices displayed on the interface of the user terminal, wherein theupdated sequence of the plurality of services includes a plurality ofupdated orders corresponding to the plurality of service; and whereinthe condition for updating the current sequence of the plurality ofservices is associated with a characteristic value for the currentsequence of the plurality of services and a characteristic value for anoptimized sequence of the plurality of services.
 15. The method of claim14, wherein the condition for updating the current sequence of theplurality of services comprises at least one of: a number count of daysin which the user terminal initiates service requests within a firstgeographical area encompassing a current location of the user terminalbeing more than a first threshold; or an interval between a previousupdating time of the sequence of the plurality of services and a currentinstant being longer than a second threshold, or a ratio between thecharacteristic value for the current sequence of the plurality ofservices and the characteristic value for the optimized sequence of theplurality of services being less than a third threshold.
 16. The methodof claim 14, wherein: the characteristic value for the current sequenceof the plurality of services is associated with a plurality of travelvalues and the plurality of current orders corresponding to theplurality of services; and the characteristic value for the optimizedsequence of the plurality of services is associated with the pluralityof travel values and a plurality of optimized orders corresponding tothe plurality of services.
 17. The method of claim 14, wherein thedetermining the optimized sequence of the plurality of servicesincludes: determining a plurality of travel values corresponding to theplurality of services respectively; and determining the optimizedsequence of the plurality of services by ranking the plurality ofservices according to the plurality of travel values.
 18. The method ofclaim 17, wherein the determining the plurality of travel valuescorresponding to the plurality of services respectively includes: foreach of the plurality of services, obtaining a plurality of travelfeatures including a reference feature and at least one transformativefeature; determining a reference value corresponding to the referencefeature and at least one transformative value corresponding to the atleast one transformative feature; and determining the travel valuecorresponding to the service based on the reference value and the atleast one transformative value.
 19. The method of claim 14, wherein thedetermining the updated sequence of the plurality of services displayedon the interface of the user terminal includes: determining theoptimized sequence of the plurality of services as the updated sequenceof the plurality of services.
 20. The method of claim 14, wherein thedetermining the updated sequence of the plurality of services displayedon the interface of the user terminal includes: for each of theplurality of services, obtaining electronic signals from the bus, theelectronic signals including records of historical service requestsprior to a current instant; obtaining electronic signals from the bus,the electronic signals including current availability informationindicating a supply level of the service within a vicinity of a currentlocation of the user terminal; determining, based on the records of thehistorical service requests and the current availability information, aprobability that the service will be selected by the user; anddetermining an updated order corresponding to the service based on theprobability.